//
//  GLTexture.h
//  LMPhotoVideoSDK
//
//  Created by Aimar on 16/7/6.
//  Copyright © 2016年 魁钺会. All rights reserved.
//

#import "OpenGLCoreDefine.h"

/**
 *  纹理
 */
@interface GLTexture : NSObject
/**
 *  纹理id
 */
@property (nonatomic, assign, readonly)GLuint       textureId;
/**
 *  纹理尺寸
 */
@property (nonatomic, assign)CGSize                 size;
/**
 *  纹理的回绕模式
 */
@property (nonatomic, assign)GLuint                 modeS;
/**
 *  纹理的回绕模式
 */
@property (nonatomic, assign)GLuint                 modeT;

/**
 *  类方法，通过UIImage对象创建纹理
 *
 *  @param image 纹理图像
 *
 *  @return 纹理对象
 */
+ (GLTexture*)createTextureWithUIImage:(UIImage*)image;
/**
 *  初始化方法
 *
 *  @param image 纹理图像
 *
 *  @return 初始化对象
 */
- (id)initWithUIImage:(UIImage*)image;
/**
 *  释放纹理
 */
- (void)releaseTexture;

/**
 *  绑定当前渲染纹理
 *
 *  @return 是否绑定成功
 */
- (BOOL)bind;

@end
